import request from '@/utils/request'

/**
 * 查询当前用户可使用的按钮权限
 * @param {string} menuCode 菜单编码
 * @param {string} btnGroupCode 按钮组编码
 */
export function queryBtnList(menuCode, btnGroupCode) {
  return request({
    url: `/ucenter/api/v2/button/currentUser?menuCode=${menuCode}&buttonGroupCode=${btnGroupCode}`,
    method: 'get'
  })
}

// 产品上样推荐配置----获取详情
export function getProRecommend(id) {
  return request({
    url: `/api/v1/configSampleRecommend/${id}`,
    method: 'get'
  })
}

// 产品上样推荐配置----获取表格详情
export function getRecommendDetail(data) {
  return request({
    url: `/api/v1/configSampleDetail/page`,
    method: 'post',
    data
  })
}

// 产品上样推荐配置----删除表格详情
export function delRecommendDetail(data) {
  return request({
    url: `/api/v1/configSampleDetail/deleteBatch`,
    method: 'delete',
    data
  })
}

// 产品上样推荐配置----保存表单数据
export function saveProRecommend(data) {
  return request({
    url: `/api/v1/configSampleRecommend`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 产品上样推荐配置----表格数据保存
export function saveRecommendDetail(data) {
  return request({
    url: `/api/v1/configSampleDetail/createBatch`,
    method: 'post',
    data
  })
}

// 产品上样推荐配置----删除
export function delProRecommend(data) {
  return request({
    url: `/api/v1/configSampleRecommend/updateBatch`,
    method: 'put',
    data
  })
}

// 验收问题分类----启用/停用
export function changeStatus(data) {
  return request({
    url: `/api/v1/configAcceptProblem/updateBatch`,
    method: 'put',
    data
  })
}

// 验收问题分类----获取详情
export function getClassifyDetail(id) {
  return request({
    url: `/api/v1/configAcceptProblem/${id}`,
    method: 'get'
  })
}

// 验收问题分类----保存
export function submitClassifyForm(data) {
  return request({
    url: `/api/v1/configAcceptProblem`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 验收问题责任归属----获取详情
export function getDutyDetail(id) {
  return request({
    url: `/api/v1/configAcceptDuty/${id}`,
    method: 'get'
  })
}

// 验收问题责任归属----保存
export function SaveDutyData(data) {
  return request({
    url: `/api/v1/configAcceptDuty`,
    method: 'post',
    data
  })
}

// 验收问题责任归属----停用/启用
export function changeDutyState(data) {
  return request({
    url: `/api/v1/configAcceptDuty/updateBatch`,
    method: 'put',
    data
  })
}

// 附件配置----停用/启用
export function changeAnnexState(data) {
  return request({
    url: `/api/v1/configAttachmentTemplate/updateBatch`,
    method: 'put',
    data
  })
}

// 附件配置----获取详情
export function getAnnexDetail(id) {
  return request({
    url: `/api/v1/configAttachmentTemplate/${id}`,
    method: 'get'
  })
}

// 附件配置----保存
export function saveAnnexData(data) {
  return request({
    url: `/api/v1/configAttachmentTemplate`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 附件配置----保存
export function delAnnexData(data) {
  return request({
    url: `/api/v1/configAttachmentTemplate/deleteBatch`,
    method: 'delete',
    data
  })
}

// 人员与办事处停用
export function changeStaffOfficeState(data) {
  return request({
    url: `/api/v1/configPersonnelAndOffice/updateBatch`,
    method: 'put',
    data
  })
}

// 人员与办事处----获取详情
export function getStaffOfficeDetail(id) {
  return request({
    url: `/api/v1/configPersonnelAndOffice/${id}`,
    method: 'get'
  })
}

// 人员与办事处----保存
export function saveStaffOfficeData(data) {
  return request({
    url: `/api/v1/configPersonnelAndOffice`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 异常处理配置----获取详情
export function getExceptionDetail(id) {
  return request({
    url: `/api/v1/configExceptionHandle/${id}`,
    method: 'get'
  })
}

// 异常处理配置----批量删除
export function delException(data) {
  return request({
    url: `/api/v1/configExceptionHandle/updateBatch`,
    method: 'put',
    data
  })
}

// 异常处理配置----停用/启用
export function changeExceptionState(data) {
  return request({
    url: `/api/v1/configExceptionHandle/updateBatch`,
    method: 'put',
    data
  })
}

// 异常处理配置----保存
export function saveException(data) {
  return request({
    url: `/api/v1/configExceptionHandle`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 各阶段限时规则配置----停用/启用
export function changeTimeLimitState(data) {
  return request({
    url: `/api/v1/configTimeLimit/updateBatch`,
    method: 'put',
    data
  })
}

// 各阶段限时规则配置----删除
export function delTimeLimitRules(data) {
  return request({
    url: `/api/v1/configTimeLimit/deleteBatch`,
    method: 'delete',
    data
  })
}

// 各阶段限时规则配置----获取详情
export function getTimeLimitDetail(id) {
  return request({
    url: `/api/v1/configTimeLimit/${id}`,
    method: 'get'
  })
}

// 各阶段限时规则配置----保存
export function saveTimeLimitRuls(data) {
  return request({
    url: `/api/v1/configTimeLimit`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 系列配置----是否参与推广
export function changeSeriesState(data) {
  return request({
    url: `/api/v1/configSeries/updateBatch`,
    method: 'put',
    data
  })
}

// 系列配置----获取详情
export function getSeriesDeatil(id) {
  return request({
    url: `/api/v1/configSeries/${id}`,
    method: 'get'
  })
}

// 系列配置----保存
export function saveSeriesConfig(data) {
  return request({
    url: `/api/v1/configSeries`,
    method: 'put',
    data
  })
}

// 空间配置----停用/启用
export function changeSpaceState(data) {
  return request({
    url: `/api/v1/configSpace/updateBatch`,
    method: 'put',
    data
  })
}

// 空间配置----获取详情
export function getSpaceDetail(id) {
  return request({
    url: `/api/v1/configSpace/${id}`,
    method: 'get'
  })
}

// 空间配置----保存
export function saveSpaceConfig(data) {
  return request({
    url: `/api/v1/configSpace`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 专区配置----保存
export function saveStyleConfig(data) {
  return request({
    url: `/api/v1/configStyle`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 专区配置----获取详情
export function getStyleDetail(id) {
  return request({
    url: `/api/v1/configStyle/${id}`,
    method: 'get'
  })
}

// 专区配置----停用/启用
export function changeStyleState(data) {
  return request({
    url: `/api/v1/configStyle/updateBatch`,
    method: 'put',
    data
  })
}

// 区域配置----停用/启用
export function changeAreaState(data) {
  return request({
    url: `/api/v1/configArea/updateBatch`,
    method: 'put',
    data
  })
}

// 区域配置----获取详情
export function getAreaDetail(id) {
  return request({
    url: `/api/v1/configArea/${id}`,
    method: 'get'
  })
}

// 区域配置----保存
export function saveAreaConfig(data) {
  return request({
    url: `/api/v1/configArea`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 市场层级与推荐方案配置----分页查询
export function getMarketRecommendData(data) {
  return request({
    url: `/api/v1/configMarketLevelProgram/page`,
    method: 'post',
    data
  })
}

// 市场层级与推荐方案配置----停用/启用
export function changeMarketLevelState(data) {
  return request({
    url: `/api/v1/configMarketLevelProgram/updateBatch`,
    method: 'put',
    data
  })
}

// 市场层级与推荐方案配置----删除
export function delMarketRecommend(data) {
  return request({
    url: `/api/v1/configMarketLevelProgram/deleteBatch`,
    method: 'delete',
    data
  })
}

// 市场层级与推荐方案配置----保存
export function saveMarketRecommend(data) {
  return request({
    url: `/api/v1/configMarketLevelProgram/insertBatch`,
    method: 'post',
    data
  })
}

// 搭配上样推荐方案配置----获取表格数据
export function getMatchRecommend(data) {
  return request({
    url: `/api/v1/configCollocationSample/page`,
    method: 'post',
    data
  })
}

// 搭配上样推荐方案配置----删除
export function updateMatchRecommend(data) {
  return request({
    url: `/api/v1/configCollocationSample/updateBatch`,
    method: 'put',
    data
  })
}

// // 搭配上样推荐方案配置----获取详情
// export function getMatchRecommend(id) {
//   return request({
//     url: `/api/v1/configCollocationSample/${id}`,
//     method: 'get'
//   })
// }

// 搭配上样推荐方案配置----新增
export function saveMatchRecommend(data) {
  return request({
    url: `/api/v1/configCollocationSample/createBatch`,
    method: 'post',
    data
  })
}

// 区域面积占比配置----停用/启用
export function putProportionState(data) {
  return request({
    url: `/api/v1/configAreaRatio/updateBatch`,
    method: 'put',
    data
  })
}

// 区域面积占比配置----保存表单数据
export function saveProportionForm(data) {
  return request({
    url: `/api/v1/configAreaRatio`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 区域面积占比配置----获取表单详情
export function getProportionForm(id) {
  return request({
    url: `/api/v1/configAreaRatio/${id}`,
    method: 'get'
  })
}

// 区域面积占比配置----获取表格详情
export function getProportionDetail(data) {
  return request({
    url: `/api/v1/configAreaRatioDetail/page`,
    method: 'post',
    data
  })
}

// 区域面积占比配置----删除表格数据
export function delProportionDetail(data) {
  return request({
    url: `/api/v1/configAreaRatioDetail/deleteBatch`,
    method: 'delete',
    data
  })
}

// 区域面积占比配置----新增表格数据
export function saveProportionDetail(data) {
  return request({
    url: `/api/v1/configAreaRatioDetail/insertBatch`,
    method: 'post',
    data
  })
}

// 区域面积占比配置----修改表格数据
export function putProportionDetail(data) {
  return request({
    url: `/api/v1/configAreaRatioDetail/updateBatch`,
    method: 'put',
    data
  })
}

// 消息推送模板配置----新增/编辑数据
export function saveMessageTemplate(data) {
  return request({
    url: `/api/v1/configMessageTemplate`,
    method: data.id ? 'put' : 'post',
    data
  })
}

// 消息推送模板配置----获取详情数据
export function getMessageTemplate(id) {
  return request({
    url: `/api/v1/configMessageTemplate/${id}`,
    method: 'get'
  })
}

// 消息推送模板配置----停用/启用表格数据
export function changeMessageState(data) {
  return request({
    url: `/api/v1/configMessageTemplate/updateBatch`,
    method: 'put',
    data
  })
}

/**
 * 根据图片转ppt，批量保存图片
 * @param {Array} data
 * @returns
 */
export function savePicBatch(data) {
  return request({
    url: `/api/v1/acceptProblem/batchCreate`,
    method: 'post',
    data
  })
}

/**
 * 删除图片转ppt
 * @param {Array} data
 * @returns
 */
export function deletePicToPPT(data) {
  return request({
    url: `/api/v1/acceptProblem/deleteBatch`,
    method: 'delete',
    data
  })
}
